<%@ page contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" trimDirectiveWhitespaces="true" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<fmt:requestEncoding value="UTF-8" />
<%-- write.jsp에서 입력한 데이터에 대한 한글처리 --%>

<jsp:useBean id="bvo" class="dasom.model.BoardVO"/>
<%-- write.jsp에서 입력한 데이터를 BoardVO에 저장하기 위해
	자바빈즈 규약에 따라 작성된 VO클래스를 
	useBean 액션을  통해 객체로 생성 --%>

<jsp:setProperty name="bvo" property="*" />
<%-- write.jsp에서 입력한 bdtitle,userid,contents를
	BoardVO에 저장하려면 request.getParameter 메서드를
	3번 호출해야함 ( -> 코드 작성시 귀찮음)
	만일, 100개의 데이터를 저장해야 하는 경우 100번의 호출 필요
	따라서, setproperty 액션태그를 이용하면 1번 호출로
	모든 데이터를 VO 클래스에 저장할 수 있음 --%>
<%-- 전제 조건 : write.jsp의 폼 요소 name 속성과
		VO 클래스의 멤버변수 명이 일치해야 함 --%>

<%--  ${bvo.bdtitle } --%>
<%-- jsp:useBean 으로 선언한 객체의 id와 
	vo클래스의 멤버변수명를 이용해서 빈 객체의 값을 제어할 수 있음 
	즉, ${ id명.멤버변수명 } 으로 빈 객체 조작가능--%>

<sql:update dataSource="jdbc/oracle11xe">
 insert into board(bdno,bdtitle,userid,contents) values(seqbd.nextval,?,?,?)
 <sql:param value="${bvo.bdtitle}" />
 <sql:param value="${bvo.userid}" />
 <%-- <sql:param value="${bvo.contents}" /> --%>
 <sql:param value="${bvo.contents }" />
</sql:update>

<c:redirect url="list.jsp"/>
